The present invention relates to real-time shared-resource transactions. More specifically, the present invention relates to client devices that have multiple sub-clients that periodically request access to the shared resource.
The problem of selecting which client gains access to DRAM is the same basic problem as solved in real time systems commonly used for scheduling tasks on a CPU, or scheduling access to a shared hardware resource. The theories in this area have been under development since the early 70's, and are reasonably advanced. While there are a number of approaches to scheduling, the simplest and possibly most robust is a static priority based schedule based on Rate Monotonic Scheduling.
Information about scheduling may be found in Janet Liu “Real-Time Systems”, Prentice-Hall (2000); Liu, C. L. and J. W. Layland, “Scheduling Algorithms for Multiprogramming in a Hard Real-Time Environment”, J. Assoc. Computing Machinery (ACM), vol. 20, pp. 46–61, 1973; Leung J. Y. T. and J. Whitehead, “On the Complexity of Fixed-Priority Scheduling of Periodic, Real-Time Tasks”, Performance Evaluation (Netherlands), vol. 2, pp. 237–250, 1982; Audsley, N. C., A. Bums, M. F. Richardson and A. J. Wellings, “Hard Real-Time Scheduling: the Deadline Monotonic Approach”, pp. 127–132 in Real-time Programming, ed. W. A. Halang and K. Ramanritham, Pergamon Press, 1992; and commonly assigned U.S. Pat. No. 6,189,064, the complete subject matter of each of which is incorporated herein by reference in its entirety.
In certain unified memory architecture systems, a client splits the memory access internally among multiple modules and performs a second level arbitration within the client. In some systems, the second level of arbitration uses a round-robin scheme to evenly service a number of different types of memory access. Other types of second-level arbitration within a module are fixed scheduling as dictated by a control machine where the order of servicing and processing are controlled together between sub-modules. Left unconstrained, these clients show a very bursty pattern of requests to memory.
Further limitations and disadvantages of conventional and traditional approaches will become apparent to one of skill in the art, through comparison of such systems with the present invention as set forth in the remainder of the present application with reference to the drawings.